function u = biharmonic_u(x,y,caseNum,varargin)
switch caseNum
    case 1
        u = exp(x+y);
    case 2
        r = (x.^2+y.^2);
        theta = (2*atan2(y+eps,x+eps)+pi)/3;
        u = r.^(1/3).*sin(theta);
    case 3
        t = atan2(y+eps,x+eps);
        r = sqrt((x.^2+y.^2));
        u = r.^(5/2).*sin(5*t/2); 
    case 4
        u = x.^4 + y.^4;
    case 5
        u = sin(x+3*y);
    case 6
        u = exp(2*x+y);
    case 7
        u = 1./(1+x+y);
    otherwise
        u= 0 * x;
end